package com.sinog.biz.mapper.havexml;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sinog.core.domain.AbAnzhiResultVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;

/**
 * @desc 安置帮教管理 - 安置帮教工作信息管理
 * @author sunsf
 * @date 2020-02-07-16:37
 */
public interface AbAnzhiMapper extends BaseMapper<AbAnzhiResultVo> {

    /**
     * 获取安置信息列表
     * @param priNum priNum
     * @param flag flag
     * @param departid departid
     * @return List<Map < String,String>>
     */
    List<Map<String,Object>> getAzBaseInfonList(
            @Param("priNum") String priNum,@Param("flag") String flag,@Param("departid") String departid);

    /**
     * 获取安置信息
     * @param azId azId
     * @return Map<String,Object>
     */
    Map<String,Object> getSettleInfoByazId(@Param("azId") String azId);

    /**
     * 安置帮教管理 - 安置工作信息管理 - 待安置/已安置 - 安置 - 删除
     * @param id id
     * @return int
     */
    int delAzInfoAction(@Param("id") String id);

    /**
     * 填写信息
     * @param priNum priNum
     * @return List<AbAnzhiResultVo>
     */
    List<AbAnzhiResultVo> selectAzByPriNum(@Param("priNum") String priNum);

    /**
     * 填写信息
     * @param priNum priNum
     * @return List<Map < String,String>>
     */
    List<Map<String,String>> searchAnzhiJd(@Param("priNum") String priNum);

    /**
     * 填写信息
     * @param pid pid
     * @param jdxz jdxz
     * @param jdid jdid
     * @param jdanzhi jdanzhi
     * @return Integer
     */
    Integer moveJdBypriNum(
            @Param("pid") String pid,
            @Param("jdxz") String jdxz,@Param("jdid") String jdid,@Param("jdanzhi") String jdanzhi);

    /**
     * 获取安置信息列表
     * @param priNum priNum
     * @param flag flag
     * @return List<Map < String,Object>>
     */
    List<Map<String,Object>> getAzBaseInfonAgainList(@Param("priNum") String priNum,@Param("flag") String flag);

    /**
     * 填写信息
     * @param pid pid
     * @return Integer
     */
    Integer deleteByAzInfo(String pid);

    /**
     * 填写信息
     * @param priNum 服刑人员编号
     * @param jdid 基地id
     * @return Integer
     */
    Integer searchAnzhiByPriNum(@Param("priNum") String priNum,@Param("jdid") String jdid);

    /**
     * 安置帮教管理 - 安置工作信息管理 - 已移出 - 列表
     * @param page page
     * @param querykey querykey
     * @param departId departId
     * @param level level
     * @param orgid orgid
     * @param pinggu pinggu
     * @param sortField sortField
     * @param sortOrder sortOrder
     * @return List<Map<String,String>>
     */
    List<Map<String,String>> getMoveSettleList(Page<Map<String,String>> page,@Param("querykey") String querykey,
                                               @Param("departId") String departId,
                                               @Param("level") int level,
                                               @Param("orgid") String orgid,
                                               @Param("pinggu") String pinggu,
                                               @Param("sortField") String sortField,
                                               @Param("sortOrder") String sortOrder);
}